A display's bit depth corresponds to the number of levels of brightness that each of the display's pixels can reproduce or display. Higher bit depth displays can reproduce more discrete levels of brightness. For example, a display having a bit depth of 1 may represent either one of 21=2 levels of brightness in each pixel (e.g. each pixel can be ON or OFF). By contrast, in a display having a bit depth of 10, the display may be able to control each pixel to have one of 210=1024 distinct levels of brightness.
A color display may provide separate sub-pixels for each of a number of primary colors. For example, a display may provide pixels comprising sub-pixels that are red, green and blue. The luminance and color of a pixel can be controlled by varying the brightness of each sub-pixel. Greater bit-depth in the control of sub-pixels permits more discrete levels of luminance to be represented and also permits a color display to display a larger numbers of different colors. With a bit-depth of one for each sub-pixel one sub-pixel can be black or red, another sub-pixel can be black or green, and the third sub-pixel can be black or blue. In this case, the pixel may represent any of 21×21×21=23=8 colors.
A color display having a bit depth of 8 is capable of representing any one of 28=256 levels of brightness in each displayed sub-pixel. For example, a value of 0 may represent a value at the bottom of the sub-pixel's luminance range (typically black) and a value of 255 may represent a value at the top of the sub-pixel's luminance range. Such a display can theoretically display any one of 28·28·28=224=16,777,216 colors in each pixel.
To facilitate their display, images are encoded using various coding schemes. Bit depth is an attribute of such schemes. If an image is encoded using a bit depth of 8 then each one of the encoded image's sub-pixels (or pixels in the case of a monochrome image) may represent any one of 28=256 levels of brightness. If the same image is encoded using a bit depth of 10 then each one of the encoded image's sub-pixels (or pixels in the case of a monochrome image) may represent any one of 210=1,024 levels of brightness. Thus, a higher bit depth provides a finer granularity within the luminance range of the pixels.
Some encoding schemes for color images do not directly specify brightness of individual sub-pixels. For example, the LUV scheme specifies overall luminance (L) for a pixel and specifies color for the pixel using two chroma coordinate values U and V. Again, a greater bit depth can be used to increase the number of distinct luminance steps and/or colors that can be represented by the image data.
It is generally desirable that the luminance steps in a displayed image be small enough that a luminance difference of one step is not readily perceptible to the human visual system (HVS). Steps larger than this can result in visible artefacts such as banding, particularly in image regions where the luminance is slowly varying. Since higher bit depths make possible finer steps, higher bit depths are desirable for displaying images having higher luminance ranges. However, images encoded with higher bit depths are larger (i.e. consume more computer memory or storage space and more bandwidth on communication links) than images encoded with lower bit depths, and accordingly require increased computational processing time and resources before they can be displayed. Consequently, images are often encoded for distribution at lower than optimum bit depths, notwithstanding the availability of displays having higher bit depth capabilities and the fact that images are often initially acquired at higher bit depths.
There is a need for practical and cost effective methods and apparatus for distributing and reproducing images (both still and video images) having a desired image quality.